Emphasizing on image portions in presentations

ABSTRACT

In an implementation, a presentation program includes a hotspot feature that allows a point in a slide to be designated as a hotspot. Supplemental content may then be associated with the hotspot such that, when the hotspot is invoked in a slide presentation, the supplemental content is surfaced.

TECHNICAL BACKGROUND

Presentation programs are software applications that allow end-users tocreate slide-based presentations. PowerPoint® from Microsoft®, Google®Slides, and Keynote® from Apple® are several examples of presentationprograms that follow the slide-show model for presentations. Suchprograms are frequently provided in the context of a productivitysoftware suite that includes other applications, such as word processingand spreadsheet applications, although stand-alone presentation programsare available.

Three basic components are usually present in the user interface to mostpresentation programs. A feature menu allows a user to add slides to hisor her presentation, and then to interact with a given slide via a widevariety of features, functions, and tools. A preview panel displays apreview of all of the slides in a given presentation, which allows auser to navigate backward and forward in the presentation, add anddelete slides, and reorder them. When a given slide is selected in thepanel, its content is displayed on a full-size canvas and the end-usermay edit the slide in the canvas.

Two basic modes are supported in presentation programs: an editing modeand a presentation mode. The feature menu, the side panel, and thecanvas are rendered when in the editing mode, but typically are absentwhen in the presentation mode. Rather, the presentation mode provides aclean view of a presentation for consumption by an audience.

Some presentation programs provide a zoom-in feature that provides azoomed-in view of a portion of an image in a slide. But the zoomed-inview is typically produced from the bitmap representation of the baseimage, resulting in a lower resolution relative to that of the baseimage. In addition, the zoomed-in view, which is stored as an image fileitself, adds to the storage overhead of a given slide presentation,which already includes a source file for the base image in the slide.

Technology is disclosed herein that enhances the user experience withpresentation programs and other operational aspects of such programs. Inan implementation, a presentation program or other such productivityapplication includes a hotspot feature that allows a point in a slide tobe designated as a hotspot. Supplemental content may then be associatedwith the hotspot such that, when the hotspot is invoked in a slidepresentation, the supplemental content is surfaced.

In another implementation, a presentation application in an editing modereceives a designation of a portion of a base item in a presentationslide to be emphasized in a presentation mode. When in the presentationmode, the application may receive a selection of the portion of the baseitem designated for emphasis, in response to which it generates asupplemental item from a source of the base item. The supplemental itemmay comprise an emphasized version of the portion of the item designatedfor emphasis. The application presents the supplemental item in thepresentation slide while in the presentation mode.

This Overview is provided to introduce a selection of concepts in asimplified form that are further described below in the TechnicalDisclosure. It may be understood that this Overview is not intended toidentify key features or essential features of the claimed subjectmatter, nor is it intended to be used to limit the scope of the claimedsubject matter.

BRIEF DESCRIPTION OF THE DRAWINGS

Many aspects of the disclosure can be better understood with referenceto the following drawings. While several implementations are describedin connection with these drawings, the disclosure is not limited to theimplementations disclosed herein. On the contrary, the intent is tocover all alternatives, modifications, and equivalents.

FIG. 1A illustrates an operational environment in an implementation ofenhanced presentation technology.

FIG. 1B illustrates a presentation process in an implementation.

FIG. 1C illustrates an operational scenario in an implementation.

FIG. 2 illustrates a computing system suitable for implementing theenhanced presentation technology disclosed herein, including any of thearchitectures, elements, processes, and operational scenarios andsequences illustrated in the Figures and discussed below in theTechnical Disclosure.

FIGS. 3A-3G illustrate an operational scenario in an implementation.

TECHNICAL DISCLOSURE

Technology is disclosed herein for enhancing the digital presentationcreation experience. In an implementation, a hotspot feature is providedin a user interface to a presentation program. A user can designate oneor more points in a slide(s) as a hotspot. The user then associatessupplemental content with the hotspot. When in presentation mode, thehotspot appears visually in the slide. A user can touch, click-on, orotherwise invoke the hotspot to trigger a rendering of the supplementalcontent. The supplemental content may be, for example, a zoomed-in imageof a portion of the main content that the hotspot is nearby. Thezoomed-in image of the portion of the main content is generated from thesource of the main content, thereby preserving its resolution andconserving storage resources.

FIG. 1 illustrates an operational environment 100 in an implementationof enhanced presentation technology. Operational environment 100includes a computing system 101 on which a presentation application 103may run. Computing system 101 may be, for example, a laptop or desktopcomputer, table computer, mobile phone, or any other physical or virtualcomputing system, of which computing system 201 in FIG. 2 isrepresentative. Presentation application 103 is representative of anyapplication suitable for creating presentations, examples of whichinclude PowerPoint®, Google® Slides, Keynote® from Apple®, or any otherproductivity application.

Presentation application 103 renders a user interface 109 that a usermay interact with in order to create, edit and experience slidepresentations. Presentation application 103 may open a presentation filestored on computing system 101 (or stored remotely) for the user to editand/or present in user interface 109. Presentation file 105 is exemplaryof one such file.

Presentation file 105 includes one or more slide containers, representedby slide container 106. A slide container is a data structure that holdsinformation used by presentation application 103 to present a digitalslide in the context of a slide presentation. Slide container 106includes, for example, slide data 107 and one or more image files,represented by image file 108. Image file 108 may be a .jpeg, .gif,.bmp, or any other format of image file that may be read and opened bypresentation application 103 for rendering in user interface 109. Slidedata 107 may include, for example, text strings, shape information, orany other such data and meta data.

When operating in an editing mode, presentation application 103 presentsan editing view 110 in user interface 109 through which the user mayedit a presentation. In this example, presentation application 103generates a slide 114 from the contents of presentation file 105 anddisplays the slide 114 in user interface 109. Various previews of slide114 and/or other slides may also be presented in editing view 110,represented by preview 111, and preview 112, and preview 113.

Slide 114 includes a text string that may be generated from the slidedata 107 in slide container 106. Slide 114 also includes an image 115generated from image file 108. Thus, image file 108 may be consideredthe source of image 115.

Editing view 110 also includes a designation tool 116 for designating aportion of an image in a slide for dynamic emphasis. The user may dragand drop or otherwise locate the designation tool 116 anywhere on image115, such that the spot where it is located is designated for emphasis.

When presentation application 103 is operating in a presentation mode, apresentation view 120 of the slide 114 is presented. The presentationview 120 includes an indication 117 that an area on image 115 has beendesignated for emphasis. The user may thus select the indication 117 totrigger the presentation of a supplemental image 126. The supplementalimage 126 is generated from image file 108 in response to the userselecting the indication 117.

Utilizing the same source file as that used to produce image 115 mayhave various technical effects. For example, supplemental image 126 maybe rendered with the same or better resolution than image 115. Inaddition, only image file 108 need be stored on computing system 101,rather than having to store image file 108 and a supplemental fileassociated with supplemental image 126 (as would be the case in existingsystems).

FIG. 1B illustrates a process 150 employed by presentation application103 in the context of providing an enhanced presentation experience.Process 150 may be implemented in program instructions in the context ofcomponents, modules, or other such programming elements that comprisepresentation application 103. The program instructions direct computingsystem 101 to operate as follows.

Referring parenthetically to the steps illustrated in FIG. 1B, apresentation application under the control of process 150 receives adesignation of an area in a base item intended for emphasis (step 151)while the operating in an editing mode. This may involve a user draggingand dropping a graphical user interface element onto a location in abase item image within the context of a presentation slide. Otherexamples include the user drawing a circle around an area using a mouseinput, a digital pen, a stylus, or touch. Still other examples includeproviding a spoken command to locate an emphasis designation. Examplesof a base item include images, charts, graphs, clip art, video, or anyother type of content that may be included in a slide.

The presentation program responsively associates the designated portionof the base item with the source of the base item (step 152), to allowthe designated portion to be emphasized when the slide is viewed in apresentation mode. When operating in the presentation mode, thepresentation program monitors the user's interaction with the slide forany selection of the designated portion (step 153). The user may, forexample, click on, touch, or otherwise select the designated portion foremphasized viewing. If the user selects the designated portion (step154), the presentation program opens the source of the base item andreads it into memory anew (step 155). The presentation program thengenerates a supplemental item from the source of the base item (step156) and displays the supplemental item in the user interface, alongwith the base item (step 157).

FIG. 1C illustrates an operational scenario that may occur in thecontext of operational environment 100 when presentation application 103executes process 150. In operation, presentation application 103 readspresentation file 105 from disk in order to render slide 114 in userinterface 109. Rendering the slide includes displaying image 115 whichis generated from image file 108 read from disk.

The end-user may then interact with designation tool 116 to identify aportion of image 115 to be designated for emphasis. Such a designatedarea may be referred to as a “hot spot” in some scenarios. The hot spotis associated with the image file, such that, when the user selects thehot spot in presentation mode, presentation program 103 knows to accessimage file 108 in order to generate a zoomed-in version of image 115.Thus, image file 108 is again read from disk (or memory) and thezoomed-in view of the image is generated. Presentation application 103may then present the zoomed-in view 126 of image 115 in an overlaidmanner with respect to image 115.

FIG. 2 illustrates computing system 201, which is representative of anycomputing system capable of employing a presentation program. Computingsystem 201 may be suitable for rendering user interface 300, discussedwith respect to FIGS. 3A-3F.

FIGS. 3A-3F illustrate a user interface to a presentation program as theuser interface transitions through various states in response to userinputs. The various states illustrated in the drawings represent the newfeatures and functionality proposed herein to enhance presentationtechnology.

In FIG. 3A, user interface 300 includes a slide 301. The slide 301includes a canvas 303 onto which a user may deposit text, images, andother suitable content in the context of developing a digital slidepresentation. User interface 300 may include other elements, such as alayout panel that may include previews of slide 301 in various layouts.A preview panel may also be available in some implementations thatincludes a preview of each slide in the presentation.

User interface 300 also includes a feature menu 321 with sub-menus 323that house various features and tools for interacting with apresentation. For example, feature menu 321 includes the home, insert,design, transitions, slide show, review, and view sub-menus. When agiven sub-menu is selected, its options and elements are displayed in aribbon tool bar 331. The tools presented in the ribbon tool bar 331represent the various features and functionality associated with thesub-menu. In this example, the home sub-menu 333 is selected, whichsurfaces various home tools, such as a new slide too, a layout tool, anda formatting tool.

A hotspot element 305 may be rendered in the slide (or elsewhere) that,when in editing mode, allows a user to create a hotspot merely bytouching/selecting the hotspot element 305. The user can drag and dropthe hotspot element 305 to a point in the slide where he or she wants tocreate a hotspot. In FIG. 3B, the hotspot element 305 is dragged anddropped to a point in the slide nearby the hub and spoke of the backwheel of the bicycle in the image. The size of resulting hotspot 307 maybe adjusted by pinching and zooming as shown in FIG. 3C.

In FIG. 3D, supplemental content is shown in association with theresulting hotspot 307. The supplemental content 309 may be generatedfrom the main content that it overlays. For example, the supplementalcontent may be a zoomed-in portion of an image over which the resultinghotspot 307 is presented. In other cases, the supplemental content 309may be a second image, such as another image provided by the user, forexample, to show a more detailed view. A text box (not shown) may befurther associated with the resulting hotspot 307 to describe what isbeing shown.

FIG. 3E illustrates the slide 301 in presentation mode. The slide 301 inpresentation mode includes three hotspots for exemplary purposes:hotspot 341 (created above), hotspot 342, and hotspot 343. A user canselect any of the hotpots in order to see their associated supplementalcontent. For example, in FIG. 3F hotspot 343 is selected, which providesa zoomed-in view 344 of a portion of the bike. A text box may also besurfaced that provides explanatory text to go along with the zoomed-inimage. In FIG. 3G, hotspot 341 is selected, which provides a zoomed-inview of the gears. A text box may be included that provides a textualexplanation to accompany the supplemental content.

In some implementations, the supplemental content associated with ahotspot may be surfaced automatically. For instance, when a usernavigates to a slide with a hotspot in it, the supplemental contentbehind the hotspot may be surface automatically after a predetermined(or set) period of time, e.g. after 5 or 10 seconds. When multiplehotspots are present, the supplemental content behind each hotspot maybe surfaced automatically and in series. For instance, one hotspot maybe zoomed-in on for a period of time, then closed, followed by anotherhotspot, and so on. Other user inputs, in addition to or in place orselecting a hotspot, may also trigger a hotspot to be zoomed-in on. Forinstance, hovering over a hotspot trigger its supplemental content to besurfaced. In another example, a separate control element (e.g. a button)may be selected that triggers the supplemental content.

Referring back to FIG. 2, computing system 201 is representative of anysystem or collection of systems in which the various applications,services, scenarios, and processes disclosed herein may be implemented.Examples of computing system 201 include smart phones, laptop computers,tablet computers, desktop computers, hybrid computers, gaming machines,virtual reality devices, smart televisions, smart watches and otherwearable devices, as well as any variation or combination thereof. Otherexamples may include, but are not limited to, server computers, rackservers, web servers, cloud computing platforms, and data centerequipment, as well as any other type of physical or virtual servermachine, container, and any variation or combination thereof.

Computing system 201 may be implemented as a single apparatus, system,or device or may be implemented in a distributed manner as multipleapparatuses, systems, or devices. Computing system 201 includes, but isnot limited to, processing system 202, storage system 203, software 205,communication interface system 207, and user interface system 209.Processing system 202 is operatively coupled with storage system 203,communication interface system 207, and user interface system 209.

Processing system 202 loads and executes software 205 from storagesystem 203. Software 205 includes presentation program 206, which isrepresentative of the program(s) discussed with respect to the precedingFigures. When executed by processing system 202 to enhance documentpresentations, software 205 directs processing system 202 to operate asdescribed herein for at least the various processes, operationalscenarios, and sequences discussed in the foregoing implementations.Computing system 201 may optionally include additional devices,features, or functionality not discussed for purposes of brevity.

Referring still to FIG. 2, processing system 202 may comprise amicro-processor and other circuitry that retrieves and executes software205 from storage system 203. Processing system 202 may be implementedwithin a single processing device, but may also be distributed acrossmultiple processing devices or sub-systems that cooperate in executingprogram instructions. Examples of processing system 202 include generalpurpose central processing units, application specific processors, andlogic devices, as well as any other type of processing device,combinations, or variations thereof.

Storage system 203 may comprise any computer readable storage mediareadable by processing system 202 and capable of storing software 205.Storage system 203 may include volatile and nonvolatile, removable andnon-removable media implemented in any method or technology for storageof information, such as computer readable instructions, data structures,program modules, or other data. Examples of storage media include randomaccess memory, read only memory, magnetic disks, optical disks, flashmemory, virtual memory and non-virtual memory, magnetic cassettes,magnetic tape, magnetic disk storage or other magnetic storage devices,or any other suitable storage media. In no case is the computer readablestorage media a propagated signal.

In addition to computer readable storage media, in some implementationsstorage system 203 may also include computer readable communicationmedia over which at least some of software 205 may be communicatedinternally or externally. Storage system 203 may be implemented as asingle storage device, but may also be implemented across multiplestorage devices or sub-systems co-located or distributed relative toeach other. Storage system 203 may comprise additional elements, such asa controller, capable of communicating with processing system 202 orpossibly other systems.

Software 205 may be implemented in program instructions and among otherfunctions may, when executed by processing system 202, direct processingsystem 202 to operate as described with respect to the variousoperational scenarios, sequences, and processes illustrated herein. Forexample, software 205 may include program instructions for implementingstate transitions in a user interface to a presentation program.

In particular, the program instructions may include various componentsor modules that cooperate or otherwise interact to carry out the variousprocesses and operational scenarios described herein. The variouscomponents or modules may be embodied in compiled or interpretedinstructions, or in some other variation or combination of instructions.The various components or modules may be executed in a synchronous orasynchronous manner, serially or in parallel, in a single threadedenvironment or multi-threaded, or in accordance with any other suitableexecution paradigm, variation, or combination thereof. Software 205 mayinclude additional processes, programs, or components, such as operatingsystem software, virtual machine software, or other applicationsoftware, in addition to or that include presentation program 206.Software 205 may also comprise firmware or some other form ofmachine-readable processing instructions executable by processing system202.

In general, software 205 may, when loaded into processing system 202 andexecuted, transform a suitable apparatus, system, or device (of whichcomputing system 201 is representative) overall from a general-purposecomputing system into a special-purpose computing system customized tofacilitate enhanced presentation creation and editing. Indeed, encodingsoftware 205 on storage system 203 may transform the physical structureof storage system 203. The specific transformation of the physicalstructure may depend on various factors in different implementations ofthis description. Examples of such factors may include, but are notlimited to, the technology used to implement the storage media ofstorage system 203 and whether the computer-storage media arecharacterized as primary or secondary storage, as well as other factors.

For example, if the computer readable storage media are implemented assemiconductor-based memory, software 205 may transform the physicalstate of the semiconductor memory when the program instructions areencoded therein, such as by transforming the state of transistors,capacitors, or other discrete circuit elements constituting thesemiconductor memory. A similar transformation may occur with respect tomagnetic or optical media. Other transformations of physical media arepossible without departing from the scope of the present description,with the foregoing examples provided only to facilitate the presentdiscussion.

Communication interface system 207 may include communication connectionsand devices that allow for communication with other computing systems(not shown) over communication networks (not shown). Examples ofconnections and devices that together allow for inter-systemcommunication may include network interface cards, antennas, poweramplifiers, RF circuitry, transceivers, and other communicationcircuitry. The connections and devices may communicate overcommunication media to exchange communications with other computingsystems or networks of systems, such as metal, glass, air, or any othersuitable communication media. The aforementioned media, connections, anddevices are well known and need not be discussed at length here.

User interface system 209 is optional and may include a keyboard, amouse, a voice input device, a touch input device for receiving a touchgesture from a user, a motion input device for detecting non-touchgestures and other motions by a user, and other comparable input devicesand associated processing elements capable of receiving user input froma user. Output devices such as a display, speakers, haptic devices, andother types of output devices may also be included in user interfacesystem 209. In some cases, the input and output devices may be combinedin a single device, such as a display capable of displaying images andreceiving touch gestures. The aforementioned user input and outputdevices are well known in the art and need not be discussed at lengthhere.

User interface system 209 may also include associated user interfacesoftware executable by processing system 202 in support of the varioususer input and output devices discussed above. Separately or inconjunction with each other and other hardware and software elements,the user interface software and user interface devices may support agraphical user interface, a natural user interface, or any other type ofuser interface to present a user interface to a presentation program asdiscussed herein (e.g. user interface 109).

Communication between computing system 201 and other computing systems(not shown), may occur over a communication network or networks and inaccordance with various communication protocols, combinations ofprotocols, or variations thereof. Examples include intranets, internets,the Internet, local area networks, wide area networks, wirelessnetworks, wired networks, virtual networks, software defined networks,data center buses, computing backplanes, or any other type of network,combination of network, or variation thereof. The aforementionedcommunication networks and protocols are well known and need not bediscussed at length here.

In any of the aforementioned examples in which data, content, or anyother type of information is exchanged, the exchange of information mayoccur in accordance with any of a variety of protocols, including FTP(file transfer protocol), HTTP (hypertext transfer protocol), REST(representational state transfer), WebSocket, DOM (Document ObjectModel), HTML (hypertext markup language), CSS (cascading style sheets),HTMLS, XML (extensible markup language), JavaScript, JSON (JavaScriptObject Notation), and AJAX (Asynchronous JavaScript and XML), as well asany other suitable protocol, variation, or combination thereof.

The functional block diagrams, operational scenarios and sequences, andflow diagrams provided in the Figures are representative of exemplarysystems, environments, and methodologies for performing novel aspects ofthe disclosure. While, for purposes of simplicity of explanation,methods included herein may be in the form of a functional diagram,operational scenario or sequence, or flow diagram, and may be describedas a series of acts, it is to be understood and appreciated that themethods are not limited by the order of acts, as some acts may, inaccordance therewith, occur in a different order and/or concurrentlywith other acts from that shown and described herein. For example, thoseskilled in the art will understand and appreciate that a method couldalternatively be represented as a series of interrelated states orevents, such as in a state diagram. Moreover, not all acts illustratedin a methodology may be required for a novel implementation.

The descriptions and figures included herein depict specificimplementations to teach those skilled in the art how to make and usethe best option. For the purpose of teaching inventive principles, someconventional aspects have been simplified or omitted. Those skilled inthe art will appreciate variations from these implementations that fallwithin the scope of the invention. Those skilled in the art will alsoappreciate that the features described above can be combined in variousways to form multiple implementations. As a result, the invention is notlimited to the specific implementations described above, but only by theclaims and their equivalents.

1. A computing apparatus comprising: one or more computer readablestorage media; a processing system operatively coupled with the one ormore computer readable storage media; and a presentation applicationcomprising program instructions stored on the one or more computerreadable storage media that, when read and executed by the processingsystem, direct the processing system to at least: in an editing mode,receive a designation of a portion of a base item in a presentationslide to be emphasized in a presentation mode; in the presentation mode,and in response to a selection of the portion of the base itemdesignated for emphasis, generate a supplemental item from a source ofthe base item and comprising an emphasized version of the portion of theitem designated for emphasis; and in the presentation mode, present thesupplemental item in the presentation slide.
 2. The computing apparatusof claim 1 wherein the base item comprises a base image generated froman image file and wherein the supplemental item comprises a supplementalimage generated from the image file.
 3. The computing apparatus of claim2 wherein the program instructions direct the processing system togenerate the supplemental image from the image file in response to theselection of the portion of the base item designated for emphasis. 4.The computing apparatus of claim 3 wherein the emphasized version of theportion of the item designated for emphasis comprises a zoomed-inportion of the base image.
 5. The computing apparatus of claim 4 whereina resolution of the supplemental image is the same as or greater thanthe resolution of the base image.
 6. The computing apparatus of claim 5wherein the base image comprises a scene captured by a digital camera.7. The computing apparatus of claim 5 wherein the base image comprises achart produced by a productivity application.
 8. A method of operating apresentation application comprising: in an editing mode, receiving adesignation of a portion of a base item in a presentation slide to beemphasized in a presentation mode; in the presentation mode, and inresponse to a selection of the portion of the base item designated foremphasis, generating a supplemental item from a source of the base itemand comprising an emphasized version of the portion of the itemdesignated for emphasis; and in the presentation mode, presenting thesupplemental item in the presentation slide.
 9. The method of claim 8wherein the base item comprises a base image generated from an imagefile and wherein the supplemental item comprises a supplemental imagegenerated from the image file.
 10. The method of claim 9 wherein theprogram instructions direct the processing system to generate thesupplemental image from the image file in response to the selection ofthe portion of the base item designated for emphasis.
 11. The method ofclaim 10 wherein the emphasized version of the portion of the itemdesignated for emphasis comprises a zoomed-in portion of the base image.12. The method of claim 11 wherein a resolution of the supplementalimage is the same as or greater than the resolution of the base image.13. The method of claim 12 wherein the base image comprises a scenecaptured by a digital camera.
 14. The method of claim 13 wherein thebase image comprises a chart produced by a productivity application. 15.A computing apparatus comprising: one or more computer readable storagemedia; a processing system operatively coupled with the one or morecomputer readable storage media; and a presentation program comprisingprogram instructions stored on the one or more computer readable storagemedia that, when read and executed by the processing system, direct theprocessing system to at least: associate a hotspot with a point in aslide presented in a user interface to the presentation program; presentthe hotspot in the slide; and, when the hotspot is invoked, presentsupplemental content in the slide.
 16. The computing apparatus of claim15 wherein the supplemental content comprises a zoomed-in portion ofmain content in the slide.
 17. The computing apparatus of claim 16wherein the main content in the slide comprises an image generated froman image file and wherein the supplemental content comprises asupplemental image also generated from the image file.
 18. The computingapparatus of claim 17 wherein the program instructions direct theprocessing system to generate the supplemental image from the image filein response to when the hotspot is invoked.
 19. The computing apparatusof claim 18 wherein a resolution of the supplemental image is the sameas the resolution of the image.
 20. The computing apparatus of claim 19wherein to present the supplemental content in the slide, the programinstructions direct the processing system to present the supplementalimage in an overlaid manner with respect to the image.